/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.sacodemel.financeiro.servico.impl;

import com.sacodemel.financeiro.modelo.RegistroCaixa;
import com.sacodemel.financeiro.modelo.dto.TotalDTO;
import com.sacodemel.financeiro.persistencia.dao.impl.RegistroCaixaDAO;
import com.sacodemel.financeiro.persistencia.dao.IRegistroCaixaDAO;
import com.sacodemel.financeiro.servico.IRegistroCaixaService;
import com.sacodemel.financeiro.util.Constantes;
import java.util.List;

/**
 *
 * @author X4Q1
 */
public class RegistroCaixaService implements IRegistroCaixaService {

    IRegistroCaixaDAO registroCaixaDAO = new RegistroCaixaDAO();

    public List<RegistroCaixa> obterListaReceitas() throws Exception {
        return registroCaixaDAO.listarReceitas();
    }

    public List<RegistroCaixa> obterListaDespesas() throws Exception {
        return registroCaixaDAO.listarDespesas();
    }

    public void excluir(RegistroCaixa registroCaixa) throws Exception {
        registroCaixa.setStatus(Constantes.STATUS_INATIVO);
        registroCaixaDAO.excluir(registroCaixa);
    }

    public void salvar(RegistroCaixa registroCaixa) throws Exception {
        registroCaixaDAO.salvar(registroCaixa);
    }

    public TotalDTO retornarTotal(List<RegistroCaixa> listaRegistros) {
        TotalDTO total = new TotalDTO();

        for (RegistroCaixa registroCaixa : listaRegistros) {
            total.setTotalValor(total.getTotalValor() + registroCaixa.getValor());
        }

        return total;
    }

    public List<RegistroCaixa> obterRegistrosPorInvestidor(Integer id) throws Exception{
        return registroCaixaDAO.listarRegistrosPorInvestidor(id);
    }
}
